package com.negocio.beans;

import java.util.ArrayList;
import java.util.List;

import javax.ejb.LocalBean;
import javax.ejb.Stateless;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;

import com.negocio.dao.ProvaDAO;
import com.negocio.entidades.Prova;
import com.negocio.facade.ProvaRemote;

/**
 * Session Bean implementation class ProvaBean
 */
@Stateless
@LocalBean
public class ProvaBean implements ProvaRemote {
	@PersistenceContext(unitName = "SystemgedBD")
	private EntityManager em;

    /**
     * Default constructor. 
     */
    public ProvaBean() {
        // TODO Auto-generated constructor stub
    }

	@Override
	public Prova salvar(Prova p) throws Exception {
		if (p.getTemas().charAt(0) != '#'){
			p.setTemas( "#"+p.getTemas());
    	}
    	if (p.getTemas().charAt(p.getTemas().length()-1) != '#')
    		p.setTemas(p.getTemas() + "#");
    	p.setTemas(p.getTemas().trim().replace("#", " #"));
    	p.setTemas(p.getTemas().replace("  ", " ").trim());
	
		ProvaDAO dao = new ProvaDAO(em);
		return dao.salvar(p);
	}

	
	@Override
	public void excluir(long id) {
		ProvaDAO dao = new ProvaDAO(em);
		 dao.excluir(id);
	}

	@Override
	public List<Prova> listar() {
		ProvaDAO dao = new ProvaDAO(em);
		List<Prova> provas = new ArrayList<Prova>();
		provas = dao.listar();
		return provas;
	}

	@Override
	public Prova consultarPorId(long id) {
		ProvaDAO dao = new ProvaDAO(em);
		return dao.consultarPorId(id);
	}

}
